1. Field of the Invention
The present invention relates generally to data transmission, and more particularly to error detection in data transmission.
2. Description of Related Art
FIG. 1 illustrates a prior art data frame structure and a data transmission process. At a transmitter 1, a data frame 110 may start with a preamble field 1101, which is followed in sequence by a syncmark field 1102, a user data field 1103 (also referred to as payload), and an error correcting code (ECC) parity field 1104. The syncmark may be a unique series of 0 and 1 and may be used to identify, preferably with high reliability, the start of user data to be transmitted. Since the user data field is immediately after the syncmark, as long as the syncmark is detected, the start of user data will be located. The ECC parity may be generated by an ECC encoder 101 from the user data.
A receiver 2 may be informed of the syncmark in advance, and may detect the start of user data by searching for the syncmark. At the receiver 2, a data frame from the transmitter 1 may first enter a syncmark and user data detector 102. If the syncmark is not found, the receiver 2 may claim failure and report error status. If the syncmark is found, the received bits corresponding to the user data 1103 and ECC parity 1104 may be fed from the syncmark and user data detector 102 to an ECC decoder 103. The ECC decoder 103 may try to decode and/or correct errors in its input. When there is no error, or there are errors but the errors are correctable, the ECC decoder 103 may output decoded user data. Otherwise, the ECC decoder 103 may claim failure and report error status.
The error detection capability of an ECC mainly depends on the number of bits in the ECC parity. The more bits in the ECC parity, the more errors the ECC may detect and/or correct. Thus, one known solution to enhance the error detection capability of an ECC is to use an ECC parity which is sufficiently long. However, when the physical space for a data frame is fixed, a long ECC parity may lead to higher bit density, which in turn may degrade the performance of the ECC. Therefore, it may be desirable to provide a method and apparatus that improve error correction capability of the ECC without costing data bit density.